<?php

class Back_Model_Coupons extends Zend_Db_Table_Abstract
{
    protected $_name = 'banner_coupons';
    
    public function getAllCoupons() {
        $db = $this->getDefaultAdapter();
        $select = $db->select()
                ->from(array('sc' => 'series_coupons'));
        return $db->fetchAll($select); 
    }
    /**
     * Подсчитываем общее количество всех кодов
     * @return array 
     */
    public function getCountAllCode () {
        $select = $this->select()->from($this->_name, array('count' => 'COUNT(*)'));
        return $this->fetchRow($select);
    }
    /**
     * Подсчитываем общее количество кодов по статусу
     * 1 - активирован, 2 - не актевирован, 3 - заблокирован
     * @param int $id_status
     * @return array 
     */
    public function getCountStatusCode($id_status) {
        $select = $this->select()->from($this->_name, array('count' => 'COUNT(*)'))
                ->where('id_status_code = ?', intval($id_status));
        return $this->fetchRow($select);
    }
    /**
     * Подсчитываем общее количество кодов серии
     * @param int $id_series - id серии
     * @return array 
     */
    public function getCountSeriesCode($id_series) {
        $select = $this->select()->from($this->_name)
                ->where('id_series = ?', intval($id_series));
        return $this->fetchAll($select);
    }
    /**
     * Подсчитываем общее количество актевированных кодов в серии
     * @param int $id_series - id серии
     * @param int $id_status - id статуса 
     * 1 - актевирован
     * @return array 
     */
    public function getCountSeriesStatusCode($id_series, $id_status) {
        $select = $this->select()->from($this->_name)
                ->where('id_series = ?', intval($id_series))
                ->where('id_status_code = ?', intval($id_status));
        return $this->fetchAll($select);
    }
}